/**
 * 更新散点图标记大小
 * @param {string|number} value - 标记大小值
 * @param {Object} currentOptions - 当前图表配置选项
 * @returns {Object} 更新后的图表配置选项
 */
function updateScatterSymbolSize(value, currentOptions) {
    if (currentOptions.series && Array.isArray(currentOptions.series)) {
        currentOptions.series.forEach(series => {
            if (series.type === 'scatter') {
                series.symbolSize = parseInt(value, 10);
            }
        });
    }
    return currentOptions;
}

/**
 * 更新散点图标记形状
 * @param {string} value - 形状值（如'circle'、'square'等）
 * @param {Object} currentOptions - 当前图表配置选项
 * @returns {Object} 更新后的图表配置选项
 */
function updateScatterSymbol(value, currentOptions) {
    if (currentOptions.series && Array.isArray(currentOptions.series)) {
        currentOptions.series.forEach(series => {
            if (series.type === 'scatter') {
                series.symbol = value;
            }
        });
    }
    return currentOptions;
}

/**
 * 更新散点图是否开启大规模模式
 * @param {string} value - 是否开启，'true'表示开启
 * @param {Object} currentOptions - 当前图表配置选项
 * @returns {Object} 更新后的图表配置选项
 */
function updateScatterLarge(value, currentOptions) {
    if (currentOptions.series && Array.isArray(currentOptions.series)) {
        currentOptions.series.forEach(series => {
            if (series.type === 'scatter') {
                series.large = value === 'true';
            }
        });
    }
    return currentOptions;
}

/**
 * 更新散点图大规模模式阈值
 * @param {string|number} value - 阈值数量
 * @param {Object} currentOptions - 当前图表配置选项
 * @returns {Object} 更新后的图表配置选项
 */
function updateScatterLargeThreshold(value, currentOptions) {
    if (currentOptions.series && Array.isArray(currentOptions.series)) {
        currentOptions.series.forEach(series => {
            if (series.type === 'scatter') {
                series.largeThreshold = parseInt(value, 10);
            }
        });
    }
    return currentOptions;
}

/**
 * 更新散点图项样式颜色
 * @param {string} value - 颜色值
 * @param {Object} currentOptions - 当前图表配置选项
 * @returns {Object} 更新后的图表配置选项
 */
function updateScatterItemStyleColor(value, currentOptions) {
    if (currentOptions.series && Array.isArray(currentOptions.series)) {
        currentOptions.series.forEach(series => {
            if (series.type === 'scatter') {
                series.itemStyle = series.itemStyle || {};
                series.itemStyle.color = value;
            }
        });
    }
    return currentOptions;
}

/**
 * 更新散点图标签可见性
 * @param {string} value - 是否显示，'true'表示显示
 * @param {Object} currentOptions - 当前图表配置选项
 * @returns {Object} 更新后的图表配置选项
 */
function updateScatterLabelShow(value, currentOptions) {
    if (currentOptions.series && Array.isArray(currentOptions.series)) {
        currentOptions.series.forEach(series => {
            if (series.type === 'scatter') {
                series.label = series.label || {};
                series.label.show = value === 'true';
            }
        });
    }
    return currentOptions;
}

/**
 * 更新散点图标签位置
 * @param {string} value - 位置值（如'top'、'bottom'等）
 * @param {Object} currentOptions - 当前图表配置选项
 * @returns {Object} 更新后的图表配置选项
 */
function updateScatterLabelPosition(value, currentOptions) {
    if (currentOptions.series && Array.isArray(currentOptions.series)) {
        currentOptions.series.forEach(series => {
            if (series.type === 'scatter' && series.label) {
                series.label.position = value;
            }
        });
    }
    return currentOptions;
}
